package com.eastfair.home.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.eastfair.boot.request.PageParams;
import com.eastfair.builder.dto.ExhibitorDTO;
import com.eastfair.builder.vo.ExhibitorVO;
import com.eastfair.core.base.R;
import com.eastfair.venueservice.dto.ServiceProviderSpaceDTO;
import com.eastfair.venueservice.dto.ServiceProviderSpaceQuery;
import com.eastfair.venueservice.vo.ServiceProviderSpaceVO;

import java.util.List;

/**
 * 展会服务.
 *
 * @author dqq
 * @date 2022 /8/23
 */
public interface HomeServiceProviderSpaceService {

    /**
     * 查询服务商使用展厅
     *
     * @param serviceProviderSpaceQuery 查询服务商使用展厅
     * @return list
     */
    List<ServiceProviderSpaceVO> queryServiceProviderSpace(ServiceProviderSpaceQuery serviceProviderSpaceQuery);

    /**
     * 服务商ID，展会ID查询展厅.
     *
     * @param serviceProviderId  the service provider id
     * @param exhibitionManageId the exhibition manage id
     * @return the list
     */
    List<String> listSpaceCodesByServiceProviderId(Long serviceProviderId, Long exhibitionManageId);

    /**
     * 通过展会，主场，展厅查询展位.
     *
     * @param query the query
     * @return java.util.List<com.eastfair.builder.vo.ExhibitorVO> r
     * @Author clm
     * @Description 通过展会，主场，展厅查询展位
     * @Date 15 :58 2022/11/15
     * @Param [query]
     */
    R<Page<ExhibitorVO>> queryServiceProviderSite(PageParams<ExhibitorDTO> query);
}